home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 125 / Computer Shopper CD-ROM Issue 125 (1998-07)(Dennis Publishing).iso / Business / Dazzler / DAZZLER.Z / CKeyboard.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-26  |  2.2 KB  |  118 lines

  1. import java.awt.Event;
  2. import java.io.DataInputStream;
  3.  
  4. class CKeyboard {
  5.    static final int RETURN = 10;
  6.    static final int DELETE = 127;
  7.    static final int ESCAPE = 27;
  8.    static final int TAB = 9;
  9.    static final int BACK = 8;
  10.    static final int INSERT = 999;
  11.    static final int[] nVkeyList = new int[]{0, 0, 0, 10, 27, 9, 8, 127, 999, 1002, 1003, 1000, 1001, 1006, 1007, 1004, 1005, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019};
  12.    protected int m_nFlags;
  13.    protected String m_strKeyChars;
  14.    protected CByteArray m_VKeyArray;
  15.    int m_nNumberOfVirtualKeys;
  16.  
  17.    void SetFlags(int var1) {
  18.       this.m_nFlags = var1;
  19.    }
  20.  
  21.    int GetNumberOfVirtualKeys() {
  22.       return this.m_nNumberOfVirtualKeys;
  23.    }
  24.  
  25.    String GetVisibleKeys() {
  26.       return this.m_strKeyChars;
  27.    }
  28.  
  29.    boolean CheckKeyPress(int var1, Event var2) {
  30.       if ((this.m_nFlags & 4) > 0) {
  31.          return true;
  32.       } else if (this.m_strKeyChars.length() != 0 && this.m_strKeyChars.indexOf(String.valueOf((char)var1)) != -1 && this.CheckKeyState(var2)) {
  33.          return true;
  34.       } else {
  35.          for(int var3 = 3; var3 < nVkeyList.length; ++var3) {
  36.             if (var3 < this.m_VKeyArray.GetSize() && this.m_VKeyArray.GetAt(var3) > 0 && (char)var1 == nVkeyList[var3] && this.CheckKeyState(var2)) {
  37.                return true;
  38.             }
  39.          }
  40.  
  41.          return false;
  42.       }
  43.    }
  44.  
  45.    CByteArray GetVirtualKeys() {
  46.       return this.m_VKeyArray;
  47.    }
  48.  
  49.    CKeyboard() {
  50.       this.m_nNumberOfVirtualKeys = nVkeyList.length;
  51.       this.m_nFlags = 4;
  52.       this.m_VKeyArray = new CByteArray();
  53.       this.m_strKeyChars = "";
  54.    }
  55.  
  56.    CKeyboard(CKeyboard var1) {
  57.       this.m_nNumberOfVirtualKeys = nVkeyList.length;
  58.       this.m_VKeyArray = new CByteArray();
  59.       this.m_nFlags = var1.GetFlags();
  60.       this.m_VKeyArray.Copy(var1.GetVirtualKeys());
  61.       this.m_strKeyChars = var1.GetVisibleKeys();
  62.    }
  63.  
  64.    int GetFlags() {
  65.       return this.m_nFlags;
  66.    }
  67.  
  68.    boolean CheckKeyState(Event var1) {
  69.       if (this.m_VKeyArray.GetSize() > 2) {
  70.          if (this.m_VKeyArray.GetAt(2) > 0) {
  71.             if (var1.metaDown()) {
  72.                return true;
  73.             }
  74.  
  75.             return false;
  76.          }
  77.  
  78.          if (var1.metaDown()) {
  79.             return false;
  80.          }
  81.  
  82.          if (this.m_VKeyArray.GetAt(1) > 0) {
  83.             if (var1.shiftDown()) {
  84.                return true;
  85.             }
  86.  
  87.             return false;
  88.          }
  89.  
  90.          if (var1.shiftDown()) {
  91.             return false;
  92.          }
  93.  
  94.          if (this.m_VKeyArray.GetAt(0) > 0) {
  95.             if (var1.controlDown()) {
  96.                return true;
  97.             }
  98.  
  99.             return false;
  100.          }
  101.  
  102.          if (var1.controlDown()) {
  103.             return false;
  104.          }
  105.       }
  106.  
  107.       return true;
  108.    }
  109.  
  110.    boolean LoadFromFile(DataInputStream var1) {
  111.       FileLoad.ReadClass(var1);
  112.       this.m_nFlags = FileLoad.ReadCPlusInt(var1);
  113.       this.m_strKeyChars = FileLoad.ReadCString(var1);
  114.       this.m_VKeyArray.LoadFromFile(var1);
  115.       return true;
  116.    }
  117. }
  118.